﻿using Basic.OAModel.DB;
using Basic.OARemoteModel.FillInItem.Model;
using Basic.OARemoteModel.UserFill.Model;
using WeDonekRpc.Model;

namespace Basic.OADAL
{
    public interface IEmpFillInItemDAL : IBasicDAL<DBEmpFillInItem, long>
    {
        UserFillData GetItem ( long id );
        UserFillItem[] QueryFillItem ( UserFillItemQuery query, IBasicPage paging, out int count );
        long[] Query ( FillInItemQuery query, IBasicPage paging, out int count );
        void Sync ( long fillInId, FillInEmp[] adds );
        Result[] Query<Result> ( FillInItemQuery query, IBasicPage paging, out int count ) where Result : class;
        void Revoke ( DBEmpFillInItem item );

        void Submit ( DBEmpFillInItem item );
    }
}